Stop and print#191
Conversation
|
@bonachea it appears the all |
I agree with your assessment of the symptoms, but I strongly disagree that we should jump straight to amputation as the only possible treatment. Let's discuss later today. |
bonachea
left a comment
There was a problem hiding this comment.
I noticed a few missing preprocessor directives that explain some of the current failures.
bonachea
left a comment
There was a problem hiding this comment.
All the compilers are now passing in CI except LFortran (all of which fail, due to a missing language feature)
This commit adds a pure stop_and_print subroutine and a corresponding unit test. The new subroutine facilitates printing string_t objects, including the results of string_t expressions, during error termination. Example Usage: call stop_and_print( "array = " // string_t( [1,2,3,4] ) )
This commit works around several build-time and runtime gfortran conpiler bugs.
The character_stop_code subroutine is public only for purposes of calling it from thetest suite so there's no need to have it in the public interface (julienne_m).
Replace `error stop` with `internal_error_stop`
Co-authored-by: Dan Bonachea <dobonachea@lbl.gov>
Co-authored-by: Dan Bonachea <dobonachea@lbl.gov>
(cherry picked from commit e35d3ce)
Co-authored-by: Dan Bonachea <dobonachea@lbl.gov> (cherry picked from commit 07b890f)
This commit defined and uses a new macro to remove the new stop_and_print feature and corresponding tests with compilers or compiler versions that do do not compile the code correctly.
Co-authored-by: Dan Bonachea <dobonachea@lbl.gov>
|
Rebased onto the tip of main without changes, to pick-up the CI changes in #194 |
This was always crashing at runtime, we just missed the failure in CI
These break all current releases of LFortran, so are being deferred to a separate PR. Minor related cleanups
|
@rouson I've pushed the changes we discussed today to remove use of the generic type-bound procedures in I've also added CI coverage for the new stop-and-print example on compilers where we support the feature. This in turn revealed that the feature was actually broken at runtime on GFortran, which I then also repaired. |
|
@bonachea apologies if I'm misunderstanding the details. To clarify, I'd like for the generic bindings to exist for users, but I'd be fine with us not using them in the tests. I think we can do this if we drop the tagged releases of |
That's basically what I've deployed in fe9abbb. The generic bindings are still available as I renamed the bindings to minimize the "blast radius" of changes to the existing uses, but if you really feel strongly about the names we can additionally go rename everywhere.
|

No description provided.